/*
 * 英才汇硕信息科技有限公司 拥有本软件版权 2021 并保留所有权利。
 * Copyright 2021, YCHS Information&Science Techology Co.,Ltd,
 * All right reserved.
 */
package com.ychs.lawyerback.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.StringRedisSerializer;

/**
 * @author mayujing
 * @version 1.0
 */
@Configuration
public class RedisConfig {

    //radis临时存储的形式是键值对，key是键，value是hash、list、set、thenset
    @Bean
    public RedisTemplate redisTemplate(RedisConnectionFactory factory) {
        // 1. 创建RedisTemplate实例
        RedisTemplate radisTemplate = new RedisTemplate();
        // 2. 设置Redis连接工厂（指定Redis服务器地址、端口等连接信息，从factory获取）
        radisTemplate.setConnectionFactory(factory);
        // 3. 设置键（key）的序列化器：使用StringRedisSerializer
        radisTemplate.setKeySerializer(new StringRedisSerializer());
        // 4. 设置值（value）的序列化器：使用StringRedisSerializer
        radisTemplate.setValueSerializer(new StringRedisSerializer());
        // 5. 返回配置好的RedisTemplate实例，交给Spring容器管理
        return radisTemplate;
    }
}
